// 自动生成模板SysOperationRecord
package system

import (
	"time"

	"server/global"
)

// 如果含有time.Time 请自行import time包
type SysOperationLog struct {
	global.GvaModel
	UserId       uint          `gorm:"column:user_id;comment:用户ID" form:"user_id" json:"user_id"`                           // 菜单分组ID
	UserName     string        `gorm:"column:user_name;comment:用户名称" form:"user_name" json:"user_name"`                     // 分组键名
	OpertionName string        `gorm:"column:opertion_name;comment:路由操作名称"       form:"opertion_name" json:"opertion_name"` // 分组名称
	PermId       uint          `gorm:"column:perm_id;comment:权限ID" form:"perm_id" json:"perm_id"`                           // 菜单分组ID
	RouteName    string        `gorm:"column:route_name;comment:路由名称" form:"route_name" json:"route_name"`                  // 操作路由名
	Url          string        `gorm:"column:url;comment:访问地址" form:"url" json:"url"`                                       // 访问地址
	Ip           string        `gorm:"column:ip;comment:请求ip" json:"ip" form:"ip"`
	Method       string        `gorm:"column:method;comment:请求方法" json:"method" form:"method"`
	Status       int           `gorm:"column:status;comment:请求状态" json:"status" form:"status"`
	Latency      time.Duration `gorm:"column:latency;comment:延迟" json:"latency" form:"latency" swaggertype:"string"`
	Agent        string        `gorm:"column:agent;comment:代理" json:"agent" form:"agent"`
	ErrorMessage string        `gorm:"column:error_message;comment:错误信息" json:"error_message" form:"error_message"`
	Body         string        `gorm:"type:longtext;column:body;comment:请求Body" json:"body" form:"body"`
	Resp         string        `gorm:"type:longtext;column:resp;comment:响应Body" json:"resp" form:"resp"`
	User         SysUser       `json:"user"`
}
